1793A - Yet Another Promotion - CodeForces Solution


greedy math *800

Please click on ads to support us..

C++ Code:

#include <iostream>
#include <vector>
#include <algorithm>
#include <cmath>
using namespace std;

int main() {
    long long h,t,a,b,n,m,sum = 0;
    cin >> t;
    for (int i = 0; i < t; i++) {
        cin >> a >> b >> n >> m;
        sum = 0;
        h = n / (m + 1);
        n -= h * (m + 1);
        if (m * a < b * (m + 1))
           sum += (m * a)*h;
        else
            sum += (b * (m + 1))*h;
        if (a * n < b * n)
            sum += a * n;
        else
            sum += b * n;
        cout << sum << endl;
    }
    return 0;
}


Comments

Submit
0 Comments
More Questions

Two Strings
Anagrams
Prime Number
Lexical Sorting Reloaded
1514A - Perfectly Imperfect Array
580A- Kefa and First Steps
1472B- Fair Division
996A - Hit the Lottery
MSNSADM1 Football
MATCHES Playing with Matches
HRDSEQ Hard Sequence
DRCHEF Doctor Chef
559. Maximum Depth of N-ary Tree
821. Shortest Distance to a Character
1441. Build an Array With Stack Operations
1356. Sort Integers by The Number of 1 Bits
922. Sort Array By Parity II
344. Reverse String
1047. Remove All Adjacent Duplicates In String
977. Squares of a Sorted Array
852. Peak Index in a Mountain Array
461. Hamming Distance
1748. Sum of Unique Elements
897. Increasing Order Search Tree
905. Sort Array By Parity
1351. Count Negative Numbers in a Sorted Matrix
617. Merge Two Binary Trees
1450. Number of Students Doing Homework at a Given Time
700. Search in a Binary Search Tree
590. N-ary Tree Postorder Traversal